/**
 *
 * AtJava source-code is licensed under the LGPL.
 * You may copy, adapt, and redistribute this file for commercial or non-commercial use.
 * When copying, adapting, or redistributing this document in keeping with the guidelines above,
 * you are required to provide proper attribution to obinary.
 * If you reproduce or distribute the document without making any substantive modifications to its content,
 * please use the following attribution line:
 *
 * Copyright 2007 Atjava.com Ltd. (http://www.atjava.com) All rights reserved.
 *
 */
package com.atjava.jcrt.core;

import org.apache.commons.lang.exception.NestableRuntimeException;
/**
 * 
 * @author biggie
 * @version $Revision: 1.1 $ $Date: 2008/07/02 02:10:55 $
 */
public abstract class ContentHandler implements Cloneable {
	
	private ItemType itemType = null;
    /**
     * package private constructor
     */
    ContentHandler(ItemType itemType) {
    	this.itemType = itemType;
    }
    
    /**
     * return Item Type 
     * @return
     */
    protected ItemType getItemType(){
    	return itemType;
    }
    /**
     * Bit by bit copy of the current object.
     * @return Object cloned object
     */
    protected Object clone() {
        try {
            return super.clone();
        }
        catch (CloneNotSupportedException e) {
            // should never happen
        	throw new NestableRuntimeException(e);
        }
    }
}
